﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Genesis.ShapeImage
{
    public class MyShape
    {
        public MyShapeType shapeType { get; set; }
        /// <summary>
        /// Each shape consists of parts, that is list of parts
        /// Each part is an array of points where each point is a pair {x,y}
        /// </summary>
        public List<MyShapePoint[]> shapeParts { get; set; }
    }

    public class MyShapePoint
    {
        /// <summary>
        /// Gets or sets the X value
        /// </summary>
        public double X;

        /// <summary>
        /// Gets or sets the Y value
        /// </summary>
         public double Y;
        /// <summary>
        /// A simple double precision point
        /// </summary>
        /// <param name="x">X value</param>
        /// <param name="y">Y value</param>
         public MyShapePoint(double x, double y)
        {
            X = x;
            Y = y;
        }
    }
    /// <summary>
    /// The ShapeType of a shape in a Shapefile
    /// </summary>
    public enum MyShapeType
    {
        /// <summary>
        /// Null Shape
        /// </summary>
        Null = 0,

        /// <summary>
        /// Point Shape
        /// </summary>
        Point = 1,

        /// <summary>
        /// PolyLine Shape
        /// </summary>
        PolyLine = 3,

        /// <summary>
        /// Polygon Shape
        /// </summary>
        Polygon = 5,

      
    }
}
